/* 主样式文件 - 现代化商业系统设计 */
.root {
    -fx-font-family: "Segoe UI", "Microsoft YaHei", sans-serif;
    -fx-background-color: #f8f9fa;
    -fx-font-size: 14px;
}

/* 主色调 - 现代化企业配色 */
.main-color {
    -fx-background-color: linear-gradient(to bottom, #2c3e50, #34495e);
}

/* 标题栏样式 - 现代化设计 */
.title-bar {
    -fx-background-color: linear-gradient(to bottom, #2c3e50, #34495e);
    -fx-padding: 15px 20px;
    -fx-alignment: center-left;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.3), 8, 0, 0, 2);
}

.title-label {
    -fx-text-fill: white;
    -fx-font-size: 18px;
    -fx-font-weight: bold;
    -fx-effect: dropshadow(one-pass-box, rgba(0,0,0,0.5), 2, 0, 0, 1);
}

.title-button {
    -fx-background-color: transparent;
    -fx-text-fill: white;
    -fx-cursor: hand;
    -fx-background-radius: 4px;
    -fx-padding: 8px 12px;
    -fx-font-size: 13px;
    -fx-font-weight: 500;
}

.title-button:hover {
    -fx-background-color: rgba(255,255,255,0.2);
    -fx-effect: dropshadow(one-pass-box, rgba(0,0,0,0.3), 4, 0, 0, 1);
}

/* 导航面板样式 - 现代化侧边栏 */
.nav-panel {
    -fx-background-color: #ffffff;
    -fx-border-color: #e9ecef;
    -fx-border-width: 0 1px 0 0;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.1), 10, 0, 2, 0);
}

/* 导航按钮样式 - 现代化设计 */
.nav-button {
    -fx-background-color: transparent;
    -fx-text-fill: #495057;
    -fx-padding: 12px 16px;
    -fx-cursor: hand;
    -fx-background-radius: 8px;
    -fx-font-size: 14px;
    -fx-font-weight: 500;
    -fx-alignment: center-left;
    -fx-graphic-text-gap: 12px;
}

.nav-button:hover {
    -fx-background-color: #f8f9fa;
    -fx-text-fill: #2c3e50;
    -fx-effect: dropshadow(one-pass-box, rgba(0,0,0,0.1), 4, 0, 0, 1);
}

.nav-button-selected {
    -fx-background-color: linear-gradient(to right, #3498db, #2980b9);
    -fx-text-fill: white;
    -fx-border-radius: 8px;
    -fx-background-radius: 8px;
    -fx-effect: dropshadow(one-pass-box, rgba(52,152,219,0.4), 6, 0, 0, 2);
}

/* 内容面板样式 - 现代化卡片设计 */
.content-panel {
    -fx-background-color: #ffffff;
    -fx-padding: 10px;
    -fx-background-radius: 10px;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.08), 12, 0, 0, 4);
}

/* 面板标题样式 */
.panel-header {
    -fx-background-color: linear-gradient(to right, #f8f9fa, #ffffff);
    -fx-border-color: #e9ecef;
    -fx-border-width: 0 0 2px 0;
    -fx-background-radius: 8px 8px 0 0;
    -fx-padding: 16px 20px;
}

.panel-title {
    -fx-text-fill: #2c3e50;
    -fx-font-size: 20px;
    -fx-font-weight: bold;
}

/* 表单样式 - 现代化表单设计 */
.form-container {
    -fx-spacing: 16px;
    -fx-padding: 24px;
    -fx-background-color: #ffffff;
    -fx-background-radius: 12px;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.05), 8, 0, 0, 2);
}

.form-field {
    -fx-pref-width: 320px;
    -fx-background-color: #ffffff;
    -fx-border-color: #ced4da;
    -fx-border-width: 1px;
    -fx-border-radius: 6px;
    -fx-background-radius: 6px;
    -fx-padding: 10px 12px;
    -fx-font-size: 14px;
}

.form-field:focused {
    -fx-border-color: #3498db;
    -fx-effect: dropshadow(one-pass-box, rgba(52,152,219,0.3), 4, 0, 0, 0);
}

.form-label {
    -fx-font-weight: 600;
    -fx-text-fill: #495057;
    -fx-font-size: 14px;
}

/* 注册表单样式 */
.registration-form {
    -fx-background-color: white;
    -fx-background-radius: 15px;
    -fx-border-radius: 15px;
    -fx-border-color: #cccccc;
    -fx-border-width: 1px;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.2), 10, 0, 0, 0);
}

.registration-section {
    -fx-background-color: #f5f5f5;
    -fx-background-radius: 10px;
    -fx-border-radius: 10px;
    -fx-border-color: #e0e0e0;
    -fx-border-width: 1px;
}

.registration-section .title {
    -fx-font-weight: bold;
    -fx-font-size: 14px;
}

.dialog-title {
    -fx-font-weight: bold;
    -fx-font-size: 18px;
    -fx-text-fill: #0078d7;
}

/* 按钮样式 - 现代化按钮设计 */
.primary-button {
    -fx-background-color: linear-gradient(to bottom, #3498db, #2980b9);
    -fx-text-fill: white;
    -fx-font-weight: 600;
    -fx-padding: 5px 24px;
    -fx-cursor: hand;
    -fx-background-radius: 8px;
    -fx-font-size: 14px;
    -fx-effect: dropshadow(one-pass-box, rgba(52,152,219,0.4), 6, 0, 0, 2);
}

.primary-button:hover {
    -fx-background-color: linear-gradient(to bottom, #2980b9, #21618c);
    -fx-effect: dropshadow(one-pass-box, rgba(52,152,219,0.6), 8, 0, 0, 3);
    -fx-scale-y: 1.02;
    -fx-scale-x: 1.02;
}

.secondary-button {
    -fx-background-color: #ffffff;
    -fx-text-fill: #495057;
    -fx-padding: 5px 24px;
    -fx-cursor: hand;
    -fx-background-radius: 8px;
    -fx-border-color: #ced4da;
    -fx-border-width: 1px;
    -fx-border-radius: 8px;
    -fx-font-size: 14px;
    -fx-font-weight: 500;
}

.secondary-button:hover {
    -fx-background-color: #f8f9fa;
    -fx-border-color: #adb5bd;
    -fx-effect: dropshadow(one-pass-box, rgba(0,0,0,0.1), 4, 0, 0, 1);
}

/* 危险按钮样式 */
.danger-button {
    -fx-background-color: linear-gradient(to bottom, #e74c3c, #c0392b);
    -fx-text-fill: white;
    -fx-font-weight: 600;
    -fx-padding: 12px 24px;
    -fx-cursor: hand;
    -fx-background-radius: 8px;
    -fx-font-size: 14px;
    -fx-effect: dropshadow(one-pass-box, rgba(231,76,60,0.4), 6, 0, 0, 2);
}

.danger-button:hover {
    -fx-background-color: linear-gradient(to bottom, #c0392b, #a93226);
    -fx-effect: dropshadow(one-pass-box, rgba(231,76,60,0.6), 8, 0, 0, 3);
}

/* 成功按钮样式 */
.success-button {
    -fx-background-color: linear-gradient(to bottom, #27ae60, #229954);
    -fx-text-fill: white;
    -fx-font-weight: 600;
    -fx-padding: 12px 24px;
    -fx-cursor: hand;
    -fx-background-radius: 8px;
    -fx-font-size: 14px;
    -fx-effect: dropshadow(one-pass-box, rgba(39,174,96,0.4), 6, 0, 0, 2);
}

.success-button:hover {
    -fx-background-color: linear-gradient(to bottom, #229954, #1e8449);
    -fx-effect: dropshadow(one-pass-box, rgba(39,174,96,0.6), 8, 0, 0, 3);
}

/* 表格样式 - 现代化表格设计 */
.time-grid {
    -fx-background-color: #ffffff;
    -fx-grid-lines-visible: true;
    -fx-background-radius: 8px;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.05), 8, 0, 0, 2);
}

.time-cell {
    -fx-background-color: #ffffff;
    -fx-border-color: #e9ecef;
    -fx-border-width: 1px;
    -fx-padding: 8px;
    -fx-alignment: center;
    -fx-cursor: hand;
    -fx-font-size: 12px;
}

.time-cell:hover {
    -fx-background-color: #f8f9fa;
}

.time-cell-selected {
    -fx-background-color: linear-gradient(to bottom, #27ae60, #229954);
    -fx-text-fill: white;
    -fx-font-weight: 600;
}

/* 表格视图样式 */
.table-view {
    -fx-background-color: #ffffff;
    -fx-border-color: #e9ecef;
    -fx-border-width: 1px;
    -fx-border-radius: 8px;
    -fx-background-radius: 8px;
}

.table-view .column-header {
    -fx-background-color: linear-gradient(to bottom, #f8f9fa, #e9ecef);
    -fx-text-fill: #495057;
    -fx-font-weight: 600;
    -fx-font-size: 13px;
    -fx-padding: 12px 8px;
}

.table-view .table-cell {
    -fx-padding: 10px 8px;
    -fx-font-size: 13px;
    -fx-text-fill: #495057;
}

.table-view .table-row-cell:selected {
    -fx-background-color: rgba(52,152,219,0.1);
    -fx-text-fill: #2c3e50;
}

/* 对话框样式 - 现代化对话框设计 */
.dialog-pane {
    -fx-background-color: #ffffff;
    -fx-padding: 24px;
    -fx-background-radius: 12px;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.2), 20, 0, 0, 8);
}

.dialog-title {
    -fx-font-size: 20px;
    -fx-font-weight: bold;
    -fx-text-fill: #2c3e50;
    -fx-padding: 0 0 16px 0;
}

/* 状态栏样式 */
.status-bar {
    -fx-background-color: linear-gradient(to bottom, #ecf0f1, #bdc3c7);
    -fx-border-color: #bdc3c7;
    -fx-border-width: 1px 0 0 0;
    -fx-padding: 8px 16px;
    -fx-font-size: 12px;
    -fx-text-fill: #7f8c8d;
}

/* 注册表单样式 */
.registration-form {
    -fx-spacing: 15px;
    -fx-padding: 20px;
}

/* 功能卡片样式 - 现代化卡片设计 */
.feature-card {
    -fx-background-color: #ffffff;
    -fx-border-color: #e9ecef;
    -fx-border-width: 1px;
    -fx-border-radius: 12px;
    -fx-background-radius: 12px;
    -fx-padding: 20px;
    -fx-cursor: hand;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.08), 12, 0, 0, 4);
}

.feature-card:hover {
    -fx-background-color: #ffffff;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.15), 20, 0, 0, 8);
    -fx-scale-y: 1.02;
    -fx-scale-x: 1.02;
}

.feature-title {
    -fx-font-size: 18px;
    -fx-font-weight: bold;
    -fx-text-fill: #2c3e50;
}

.feature-description {
    -fx-font-size: 14px;
    -fx-text-fill: #7f8c8d;
    -fx-wrap-text: true;
}

/* 图标样式 - 现代化图标设计 */
.icon-circle {
    -fx-background-color: linear-gradient(to bottom, #27ae60, #229954);
    -fx-background-radius: 50%;
    -fx-min-width: 24px;
    -fx-min-height: 24px;
    -fx-max-width: 24px;
    -fx-max-height: 24px;
    -fx-effect: dropshadow(one-pass-box, rgba(39,174,96,0.4), 4, 0, 0, 1);
}

/* 标签页样式 - 商业化设计 */
.tab-pane {
    -fx-background-color: #f8f9fa;
    -fx-border-color: #dee2e6;
    -fx-border-width: 1px;
    -fx-border-radius: 8px;
    -fx-background-radius: 8px;
    -fx-effect: dropshadow(one-pass-box, rgba(0,0,0,0.1), 4, 0, 0, 1);
}

.tab-pane .tab-header-area {
    -fx-background-color: linear-gradient(to bottom, #f8f9fa, #e9ecef);
    -fx-border-color: #dee2e6;
    -fx-border-width: 0 0 1px 0;
    -fx-border-radius: 8px 8px 0 0;
    -fx-background-radius: 8px 8px 0 0;
}

.tab-pane .tab {
    -fx-background-color: linear-gradient(to bottom, #e9ecef, #dee2e6);
    -fx-text-fill: #495057;
    -fx-font-weight: 600;
    -fx-font-size: 14px;
    -fx-padding: 5px 20px;
    -fx-pref-height: 30px;
    -fx-max-height: 30px;
    -fx-min-height: 30px;
    -fx-border-radius: 6px 6px 0 0;
    -fx-background-radius: 6px 6px 0 0;
    -fx-cursor: hand;
    -fx-effect: dropshadow(one-pass-box, rgba(0,0,0,0.1), 2, 0, 0, 1);
}

.tab-pane .tab:hover {
    -fx-background-color: linear-gradient(to bottom, #f8f9fa, #e9ecef);
    -fx-text-fill: #2c3e50;
    -fx-effect: dropshadow(one-pass-box, rgba(0,0,0,0.15), 3, 0, 0, 1);
}

.tab-pane .tab:selected {
    -fx-background-color: linear-gradient(to bottom, #3498db, #2980b9);
    -fx-text-fill: white;
    -fx-border-color: #2980b9;
    -fx-border-width: 0 0 3px 0;
    -fx-effect: dropshadow(one-pass-box, rgba(52,152,219,0.4), 4, 0, 0, 2);
    -fx-font-weight: bold;
}

/* 文本区域样式 */
.text-area {
    -fx-background-color: #f8f9fa;
    -fx-border-color: #e9ecef;
    -fx-border-width: 1px;
    -fx-border-height:40px;
    -fx-border-radius: 6px;
    -fx-background-radius: 6px;
    -fx-padding: 12px;
    -fx-font-size: 13px;
    -fx-text-fill: #495057;
}

.text-area:focused {
    -fx-border-color: #3498db;
    -fx-effect: dropshadow(one-pass-box, rgba(52,152,219,0.3), 4, 0, 0, 0);
}

/* 单选按钮和复选框样式 */
.radio-button, .check-box {
    -fx-text-fill: #495057;
    -fx-font-size: 14px;
    -fx-font-weight: 500;
}

.radio-button:selected, .check-box:selected {
    -fx-text-fill: #3498db;
}

/* 组合框样式 */
.combo-box {
    -fx-background-color: #ffffff;
    -fx-border-color: #ced4da;
    -fx-border-width: 1px;
    -fx-border-radius: 6px;
    -fx-background-radius: 6px;
    -fx-padding: 8px 12px;
    -fx-font-size: 14px;
}

.combo-box:focused {
    -fx-border-color: #3498db;
    -fx-effect: dropshadow(one-pass-box, rgba(52,152,219,0.3), 4, 0, 0, 0);
}

/* 进度条样式 */
.progress-bar {
    -fx-background-color: #e9ecef;
    -fx-background-radius: 10px;
    -fx-pref-height: 8px;
}

.progress-bar .bar {
    -fx-background-color: linear-gradient(to right, #3498db, #2980b9);
    -fx-background-radius: 10px;
}

/* 列表视图样式 */
.list-view {
    -fx-background-color: #ffffff;
    -fx-border-color: #e9ecef;
    -fx-border-width: 1px;
    -fx-border-radius: 8px;
    -fx-background-radius: 8px;
    -fx-fit-to-width: true;
}

.list-view .list-cell {
    -fx-padding: 10px 12px;
    -fx-font-size: 14px;
    -fx-text-fill: #495057;
    -fx-background-color: transparent;
}

.list-view .list-cell:selected {
    -fx-background-color: rgba(52,152,219,0.1);
    -fx-text-fill: #2c3e50;
}

.list-view .list-cell:hover {
    -fx-background-color: rgba(52,152,219,0.05);
}

.list-view .list-cell:empty {
    -fx-background-color: transparent;
}

/* 滚动条样式 */
.list-view .scroll-bar:vertical {
    -fx-background-color: #f8f9fa;
    -fx-border-color: #e9ecef;
    -fx-border-width: 1px;
    -fx-background-radius: 4px;
    -fx-border-radius: 4px;
    -fx-pref-width: 12px;
}

.list-view .scroll-bar:vertical .thumb {
    -fx-background-color: #ced4da;
    -fx-background-radius: 4px;
    -fx-border-radius: 4px;
}

.list-view .scroll-bar:vertical .thumb:hover {
    -fx-background-color: #adb5bd;
}

.list-view .scroll-bar:vertical .thumb:pressed {
    -fx-background-color: #6c757d;
}

/* Control Section Styles */
.control-section {
    -fx-spacing: 15px;
    -fx-padding: 10px;
    -fx-background-color: #ffffff;
    -fx-background-radius: 8px;
    -fx-border-color: #e9ecef;
    -fx-border-width: 1px;
    -fx-border-radius: 8px;
    -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.05), 6, 0, 0, 2);
}

.description-area {
    -fx-background-color: #f8f9fa;
    -fx-border-color: #dee2e6;
    -fx-border-width: 1px;
    -fx-border-radius: 6px;
    -fx-background-radius: 6px;
    -fx-padding: 12px;
    -fx-text-fill: #495057;
    -fx-font-size: 13px;
    -fx-line-spacing: 2px;
}

.section-label {
    -fx-text-fill: #495057;
    -fx-font-size: 14px;
    -fx-font-weight: 600;
}

.input-field {
    -fx-background-color: white;
    -fx-border-color: #ced4da;
    -fx-border-width: 1px;
    -fx-border-radius: 6px;
    -fx-background-radius: 6px;
    -fx-padding: 8px 12px;
    -fx-font-size: 14px;
    -fx-text-fill: #495057;
}

.input-field:focused {
    -fx-border-color: #3498db;
    -fx-effect: dropshadow(one-pass-box, rgba(52,152,219,0.3), 4, 0, 0, 0);
}

.add-button {
    -fx-background-color: linear-gradient(to bottom, #28a745, #218838);
    -fx-text-fill: white;
    -fx-font-size: 14px;
    -fx-font-weight: 600;
    -fx-padding: 8px 16px;
    -fx-background-radius: 6px;
    -fx-cursor: hand;
    -fx-effect: dropshadow(one-pass-box, rgba(40,167,69,0.3), 4, 0, 0, 2);
}

.add-button:hover {
    -fx-background-color: linear-gradient(to bottom, #218838, #1e7e34);
    -fx-effect: dropshadow(one-pass-box, rgba(40,167,69,0.4), 6, 0, 0, 3);
}

/* Dashboard Styles */
.dashboard-title-bar {
    -fx-background-color: linear-gradient(to bottom, #1e3c72, #2a5298);
    -fx-padding: 12px 20px;
    -fx-alignment: center;
}

.dashboard-title-label {
    -fx-text-fill: white;
    -fx-font-size: 18px;
    -fx-font-weight: bold;
    -fx-effect: dropshadow(gaussian, rgba(0,0,0,0.3), 2, 0, 0, 1);
}

.dashboard-header-link {
    -fx-text-fill: rgba(255,255,255,0.9);
    -fx-font-size: 16px;
    -fx-font-weight: bold;
    -fx-cursor: hand;
    -fx-padding: 5px 8px;
    -fx-background-radius: 4px;
}

.dashboard-header-link:hover {
    -fx-background-color: rgba(255,255,255,0.1);
    -fx-text-fill: white;
}

.dashboard-feature-text {
    -fx-text-fill: rgba(255,255,255,0.95);
    -fx-font-size: 16px;
    -fx-font-weight: 500;
    -fx-effect: dropshadow(gaussian, rgba(0,0,0,0.3), 1, 0, 0, 1);
}

.dashboard-feature-line {
    -fx-stroke: rgba(255,255,255,0.8);
    -fx-stroke-width: 2;
    -fx-fill: transparent;
}

.dashboard-footer {
    -fx-background-color: rgba(0,0,0,0.2);
    -fx-padding: 15px 30px;
    -fx-alignment: center;
}

.dashboard-footer-text {
    -fx-text-fill: rgba(255,255,255,0.8);
    -fx-font-size: 12px;
}

.dashboard-footer-link {
    -fx-text-fill: rgba(255,255,255,0.9);
    -fx-font-size: 12px;
    -fx-cursor: hand;
    -fx-underline: true;
}

.dashboard-footer-link:hover {
    -fx-text-fill: white;
}